package com.thiswhyme.stream.rabbit.consumer2.BizService;

import org.springframework.cloud.stream.annotation.Input;
import org.springframework.messaging.SubscribableChannel;

/**
 * @description: message input 通道
 * @author: thiswhyme
 * @date: 2020/9/16
 */
public interface InputChannel {

    String INPUT_CHANNEL_LOG = "consumer2LogInputChannel";

    String INPUT_CHANNEL_LOG2 = "consumer2Log2InputChannel";

    String INPUT_CHANNEL_DELAY = "delayInputChannel";

    String INPUT_CHANNEL_MANUAL = "manualInputChannel";

    String INPUT_CHANNEL_TOPIC_ROUTE1 = "topicRoute1InputChannel";

    String INPUT_CHANNEL_TOPIC_ROUTE2 = "topicRoute2InputChannel";

    String INPUT_CHANNEL_CONFIRM = "confirmInputChannel";

    @Input(INPUT_CHANNEL_LOG)
    SubscribableChannel logInputChannel();

    @Input(INPUT_CHANNEL_LOG2)
    SubscribableChannel log2InputChannel();

    @Input(INPUT_CHANNEL_DELAY)
    SubscribableChannel delayInputChannel();

    @Input(INPUT_CHANNEL_MANUAL)
    SubscribableChannel manualInputChannel();

    @Input(INPUT_CHANNEL_TOPIC_ROUTE1)
    SubscribableChannel topicRoute1InputChannel();

    @Input(INPUT_CHANNEL_TOPIC_ROUTE2)
    SubscribableChannel topicRoute2InputChannel();

    @Input(INPUT_CHANNEL_CONFIRM)
    SubscribableChannel confirmInputChannel();
}
